package com.hqhy.like.admin.order.dao.persist.repository;

import com.hqhy.like.admin.order.pojo.vo.OrderDetailsStandardVO;
import com.hqhy.like.admin.order.pojo.vo.OrderEcharts2VO;
import com.hqhy.like.admin.order.pojo.vo.OrderEchartsVO;
import com.hqhy.like.admin.order.pojo.vo.OrderListVO;
import com.hqhy.like.common.pojo.vo.PageData;

import java.time.LocalDateTime;
import java.util.List;

public interface IOrderRepository {


    PageData<OrderListVO> listOrder(Integer pageNum, Integer pageSize);


    OrderListVO getStandardByOrderNo(String orderNo);

    PageData<OrderDetailsStandardVO> listOrderDetails(Integer pageNum, Integer pageSize);

    /**
     * 根据订单ID查询订单详情
     *
     * @param orderId 订单ID
     * @return 订单详情
     */

    List<OrderDetailsStandardVO> getStandardById(Long orderId);
      /*List<OrderStandardVO> getStandardById(Long orderId);*/

    /**
     * 根据ID删除订单
     *
     * @param id 数据ID
     */
    void deleteById(Long id);

    /**
     * 根据订单ID删除订单详情
     *
     * @param id 订单ID
     */
    void deleteDetailsById(Long id);

    List<OrderEchartsVO> getOrderByDate(LocalDateTime start, LocalDateTime end);

    List<OrderEcharts2VO> getEcharts(LocalDateTime start, LocalDateTime end);
}
